1. Field of the Invention
The present invention relates to wireless communication systems. More particularly, the present invention relates to a method for dynamically adapting the number of MAC-layer retransmission value(s) at a server based on client feedback.
2. Description of the Related Art
Audio/video (AV) streaming on home networks has seen increased industry interest in recent years. There are a number of networked AV products that are now available from the consumer electronics (CE) industry and the information technology (IT) industry aiming to support an entertainment quality AV experience over a home network. Wireless networks, complying with the IEEE 802.x standard, typically have the capabilities and network throughput to support AV stream bit-rates to offer an acceptable quality user experience.
Each AV packet has a deadline for the packet to be played or presented that typically depends on the application. For example, for low latency applications, such as two-way audio-video conferencing, the acceptable end-to-end delay is typically small (e.g., 150-400 msec). Any packet that arrives later than the small acceptable delay or deadline is considered to be effectively lost. As a contrasting example, a delay of several seconds may be acceptable for a packet in a one-way streaming media application because each arriving packet is buffered and the media playback or playout or presentation is started after a predetermined amount of data has been buffered. The deadline may be based on various factors, such as the available client buffer size, and user preference. The playback deadline includes presentation and playout deadline of packets.
When a packet is received after the deadline for the packet has passed, the packet is considered to be “effectively lost,” and such packet is herein also referred to as a “late packet.” There are some existing techniques that utilize or rely in part on a late packet for correcting and restricting error propagation in media frames that will be rendered in the future. The packet, however, is not typically rendered if the deadline for the packet has passed.
A wireless channel poses several challenges for AV streaming that should be overcome in order to achieve a satisfactory experience for a user because a wireless channel is unreliable and packets may become lost. The challenges may include handling lost, re-ordered and duplicate packets. Packet loss may be handled at various levels in the network stack. For example, protocols, such as transmission control protocol (TCP), may provide end-to-end reliable packet transport albeit at the expense of delay. TCP, however, may not provide the best option for streaming AV data in the case of a wireless channel having a rapidly fluctuating bandwidth because each packet of AV streaming media typically has a deadline after which delivery of the packet is not useful. In such situations, using user datagram protocol (UDP) and other protocols, such as real-time transport protocol (RTP) on top of UDP, may provide a better overall solution and improved streaming performance. The media access control (MAC) layer may support retransmissions in the case when packets are lost. In the case of an IEEE 802.11-based network, network cards typically support different number of MAC retransmission values to handle wireless packet loss. See, for example, ANSI/IEEE Standard 802.11, “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications,” 1999, and ANSI/IEEE Standard 802.11b, “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz band,” 1999. MAC retransmissions may reduce the number of lost packets, but may also result in packet delays. Consequently, depending upon the application, the packet deadline may result in late packets being considered effectively lost.
Performance analysis and modeling of errors and losses over local area networks (LANs), such as an 802.11b LAN for high-bit-rate real-time multimedia are disclosed by S. Khayam et al., “Performance analysis and modeling of errors and losses over 802.11b LANs for high-bit-rate real-time multimedia,” Signal Processing: Image Communications, Volume 18, Issue 7, August 2003. Experimental measurements of REALMEDIA™ audio/video streaming applications on an IEEE 802.11b wireless LAN are disclosed by T. Kuang et al., “RealMedia Streaming Performance on an IEEE 802.11b Wireless LAN,” Proceedings of IASTED wireless and Optical Communications (WOC) Conference, Canada, pp. 306-311, July 2002. T. Kuang et al. also disclose the relationship between the wireless channel error rate and the user-perceived quality of streaming applications.
An improvement to the Auto Rate Fallback (ARF) algorithm for both short-term and long-term adaptation is disclosed by M. Lacage et al., “IEEE 802.11 Rate Adaptation: A Practical Approach,” Proceedings of the 7th ACM/IEEE International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems, Italy, Oct. 46, 2004. An analysis and modeling of errors at the 802.11b link layer are disclosed by S. Karande et al., “Analysis and modeling of errors at the 802.11b link layer,” IEEE International Conference on Multimedia and Expo (ICME), July 2003. S. Sharma, “Analysis of 802.11b MAC: A QoS, Fairness, and Performance Perspective,” e.g., the World Wide Web at ecsl.cs.sunysb.edu/tr, particularly the file wlanrpe.pdf, discloses that the Medium Access Controller for 802.11b networks is a prime area for quality of service (QOS), fairness, performance, and security improvements. Additionally, S. Sharma et al. disclose an intelligent collision avoidance scheme for enhancing MAC, to address some of the performance issues in 802.11b and similar networks.
In many situations, the deadlines for AV packets are typically controlled on the client side. For example, for one-way streaming media, the client may have a memory constraint that determines its buffer size, which, in turn, determines when playback or presentation of the packets begins. Similarly, a client application may enable a user to configure a parameter that specifies the amount of delay the client is willing to wait (buffering time) before playback or presentation begins. Alternatively, the client may automatically set the playback deadline based on the type of communication (e.g., one-way as opposed to two-way). Additionally, the client may dynamically change the playout or playback deadline if the client is employing a technique, such as adaptive media playout.
According to IEEE standard 802.11b, the MAC Distributed Co-ordination Function (DCF) uses an acknowledgment (ACK) frame for immediate positive acknowledgment that a MAC frame has been correctly received. See, for example, ANSI/IEEE Standard 802.11b, “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz band,” 1999. When no acknowledgment is received shortly after transmission, the sender resends the packet, which is repeated until an ACK is received or until the maximum retransmission threshold number is reached.
Thus, methods, devices, and/or systems are needed to reduce the number of packets that is lost and arrives late at a client application, when compared to the related art.